N/A
N/A
This invention relates to computer data network devices and in particular to measuring various performance metrics of and controlling data routing within the data network devices based on the measured performance metrics.
As computer networks continue to grow in size and capacity, data stream management systems are needed to ensure that data is not lost due to a link that is carrying an excessive amount of data. In particular, a data stream management system will need data rate information and other link-usage parameters in order to provide optimal, or near optimal, link allocation for data transmission thereon. The use of data stream management systems will allow more efficient use of link resources by allowing data to be transmitted over links that are currently being used at a level that is less than their overall capacity. In addition, a data stream management system can allow the reallocation of available bandwidth to lower priority signals when higher priority signals are not being transmitted, allowing increased revenue for the data carriers. Currently data stream management systems utilize complex statistical models that are implemented in software to derive the link-usage parameters. These statistical models typically require a large amount of historical data to produce acceptable results. As this historical data is gathered the statistical model either does not operate, or operates inaccurately. Accordingly, a loss of data can result during this time. In addition, the current software based systems use floating point operations which can result in slower calculations.
Accordingly it would be advantageous to provide a hardware based data stream management system that has a shorter time constant for producing useful output and is able to capture more data and provide an accurate second quarter estimate of the data link parameters.
An apparatus for estimating link utilization within a network device having at least one output port is disclosed in which an integer counter is associated with the at least one output port and the integer counter is incremented in response to a predetermined event associated with the transmission of data through the output port. The integer counter is sampled periodically to determined the quantity of data transmitted through the at least one output port within a sampling period. For each sampling period an error value equal to the quantity of data minus a historical mean value corresponding to the mean value of data transmitted from the at least one output port during prior sampling periods is calculated. Also for each sampling period a current mean value equal to the historical mean value plus the product of a first predetermined multiplier times the error value is calculated, and a current deviation value equal to a historical deviation plus the product of a second predetermined multiplier multiplied by the difference of the absolute value of the error value minus the historical deviation value is also calculated. The error value, the current mean value, the historical mean value, and the current deviation value are all integer values.